PARHASH
PARNAM$
PARNAME$
PARSEPA
PARSTR$
PARTYP
PARTYPE
PARUSE

Syntax: PARHASH (parameter)
   and: PARNAM$ (number)
   and: PARNAME$ (number)
   and: PARSEPA (parameter)
   and: PARSTR$ (parameter,number)
   and: PARTYP (parameter)
   and: PARTYPE (parameter)
   and: PARUSE (parameter)
Location: DIY Toolkit (PARHASH,PARNAME$,PARSEPA,PARTYPE)
     and: Toolkit II, THOR XVI (PARNAM$,PARSTR$,PARTYP,PARUSE)

These functions allow you to find out various information about parameters passed to SuperBASIC PROCedures or FuNctions.

PARHASH - checks whether a parameter was preceded by a hash.

PARNAM$ - name of the actual parameter passed.
          If the parameter was not a name passed by reference,
          the string returned is a nul string.

PARNAME$ - The same as PARNAM$

PARSEPA - check the separator passed after the given parameter
          when the routine was called:
          Value  Separator type
          0      No separator
          1      Comma (,)
          2      Semicolon (;)
          3      Backslash (\)
          4      Exclamation mark (!)
          5      The word TO.

PARSTR$ - checks for where a user might more naturally pass a
          parameter as a name rather than a string (for example,
          when passing a filename).

          The two parameters which need to be supplied to
          PARSTR$ are the name of the parameter as listed in
          the definition line and the number of that parameter
          in the parameter list.

PARTYP - returns the type of the actual parameter which has
         been passed.

         PARTYP returns one of the following values depending
         on the type of the actual parameter passed:

         PARTYP meaning
         0      a null string
         1      a string
         2      a floating point
         3      an integer

PARTYPE - this is the same as PARTYP

PARUSE - returns one of the following values
         depending on the actual parameter passed:

         PARUSE meaning
         0      an unset variable
         2      a variable (or value)
         3      an array

Example:
100 DEFine PROCedure CAT(ch,directory)
110 LOCal dir_ch,sepa%,hash%
112 hash%=PARHASH(ch): sepa%=PARSEPA(ch)
113 dir$=PARSTR$(directory,2)
114 DIR #ch,dir$

